# -*- coding: utf-8 -*-
# @Time : 2024/3/7 16:17
# @Author : ZH
# @File : 50.py
# @Software: PyCharm
class Solution(object):
    def myPow(self, x, n):
        """
        :type x: float
        :type n: int
        :rtype: float
        """
        if n == 0: return 1.0
        if n < 0:
            return 1 / self.myPow(x, -n)  # 小于0 采用1除以整数的次方
        elif n % 2 == 0:
            return self.myPow(x * x, n // 2)  # 针对偶数的情况可以使用x的平方的 (n/2) 次方
        else:
            return x * self.myPow(x * x, n // 2)  # 针对奇数的情况，可以让次方数拿出来一个  再根据偶数次算


if __name__ == '__main__':
    so = Solution()
    z = so.myPow(x=0.00001, n=2147483647)
    print(z)
